FMCW Radar

This is a basic FMCW radar simulation example based on RadarSimPy.

RadarSimPy is a radar simulation package built with python. Contact me if you are interested in this module.

This notebook is available on my GitHub.

Radar Model

Transmitter

The following table lists the basic parameters of the radar transmitter.

Parameter Variable in RadarSimPy Value
Center frequency ($f_c$) fc 24.125 GHz
Bandwidth ($B$) bandwidth 100 MHz
Transmitted power ($P_t$) tx_power 10 dBm
Rising or falling chirp slop_type rising
Chirp repetition period ($CRP$) repetition_period 100 us
Chirp length ($T$) pulse_length 80 us
Number of chirps pulses 256
Chirp start delay delay 0 s

The radiation pattern os the transmitter antenna is $\cos{\theta}$. The gain of the antenna is 6 dB.

Receiver

The parameters of the receiver are listed in the table below.

Parameter Variable in RadarSimPy Value
Sampling rate ($f_s$) fs 2 Msps
Noise figure ($NF$) noise_figure 12 dB
RF gain/loss ($G_{rf}$) rf_gain 20 dB
Load resistor ($R_L$) load_resistor 500 $\Omega$
Baseband voltage gain ($G_{BB}$) baseband_gain 30 dB

The radiation pattern os the receiver antenna is $\cos{\theta}$. The gain of the antenna is 6 dB.

Create the FMCW radar model based on all the parameters defined above.

Calculate the characteristics of the FMCW radar:

Targets

The propertities of targets are defined here. There are 3 targets in this simulation. The locations of the targets are defined through $(x, y, z)$ coordinates in meters, and the speeds of the targets are defined trough $(v_x, v_y, v_z)$ in $m/s$. The propertites of the targets also includes radar cross-section (RCS (dBsm)) and phase (radian).

Plot

Simulate Baseband Signals

Calculate baseband signal matrix: $$[channel, slow~time, fast~time]$$

Simulate with Python engine

Simulate with C++ engine

Plot

Radar Signal Processing

Range profile

Plot

Range-Doppler processing

Plot